• File: hub_log_maintain_get.php
  • Full Path: ../saved/hub_log_maintain_get.php
  • Date Modified: 30.04.25 07:56:06
  • File size: 8.15 KB
  • MIME-type: text/x-php
  • Charset: utf-8
<?php
//======================================================================================
//
// Function: Get hub_log => DATA-HUB - HUB_LOG
//
// Programmer: AR
// Date      : 2024-07-18
//
// Copyright Reeft A/S (c) - 2024
//======================================================================================

// datatables parameters:
// https://datatables.net/manual/server-side

//======================================================================================
// General config
//======================================================================================
	include "config/config.php";

//======================================================================================
// Set language
//======================================================================================

	include "include/set_language.php";

//======================================================================================
// Get input
//======================================================================================

	//$mySession = print_r($_REQUEST, true);
	//error_log(date("Y-m-d H:i:s") . " _REQUEST - " . $mySession . " \n ",3,"__elog.txt");  //Anja

	if (isset($_REQUEST["fromdate"])) {
		$fromdate = strtoupper($_REQUEST["fromdate"]);
	} else {
		$fromdate = '';
	}

	if (isset($_REQUEST["fromtime"])) {
		$fromtime = strtoupper($_REQUEST["fromtime"]);
	} else {
		$fromtime = '';
	}

	if (isset($_REQUEST["todate"])) {
		$todate = strtoupper($_REQUEST["todate"]);
	} else {
		$todate = '';
	}

	if (isset($_REQUEST["totime"])) {
		$totime = strtoupper($_REQUEST["totime"]);
	} else {
		$totime = '';
	}

	if (isset($_REQUEST["myPageGoTo"])) {
		$myPageGoTo = $_REQUEST["myPageGoTo"];
	} else {
		$myPageGoTo = 0;
	}

	if (isset($_REQUEST["rpyOffSet"])) {
		$rpyOffSet = $_REQUEST["rpyOffSet"];
	} else {
		$rpyOffSet = 0;
	}

	if (isset($_REQUEST["rpyPageSize"])) {
		$rpyPageSize = $_REQUEST["rpyPageSize"];
	} else {
		$rpyPageSize = 0;
	}

	//===============================================================
	// Datatables input, will overrule "orgainal" fields if found
	//===============================================================

	if (isset($_REQUEST["start"])) {
		$dataTablesOffset = $_REQUEST["start"];
	} else {
		$dataTablesOffset = 0;
	}

	if (isset($_REQUEST["length"])) {
		$dataTablesPageLength = $_REQUEST["length"];
	} else {
		$dataTablesPageLength = 0;
	}

	if (isset($_REQUEST["search"]["value"])) {
		$search_arg = $_REQUEST["search"]["value"];
	} else {
		$search_arg = '';
	}

	if (isset($_REQUEST['draw'])) {
		$draw = $_REQUEST['draw'];
	} else {
		$draw = 1;
	}

	if (isset($_REQUEST["order"][0])) {
		$rpyOrderColumn = '';
		foreach ($_REQUEST["order"] as $key => &$tmpArr) {
			$order_column_index = $tmpArr["column"];
			$order_column_dir = $tmpArr["dir"];

			if ($key == 0) $rpyOrderColumn = $_REQUEST["columns"][$order_column_index]["data"] . "|" . strtoupper($order_column_dir);
			else $rpyOrderColumn .= "," . $_REQUEST["columns"][$order_column_index]["data"] . "|" . strtoupper($order_column_dir);

		}
	} else {
		$rpyOrderColumn = '';
	}

	//$search_arg = urldecode($search_arg);

	$search_arg = str_replace(' ', "|", $search_arg);

//======================================================================================
// Get input and validate
// Note datatable fields will override 2orginal" ones
//======================================================================================

	if ( $dataTablesPageLength > 0 ) {
		$rpyPageSize = $dataTablesPageLength;
	}

	if ( $dataTablesOffset >= 0 ) {
		$rpyOffSet = $dataTablesOffset;
	}

//======================================================================================
// Get session variables
//======================================================================================
	include "include/getsession.php";

//======================================================================================
// Set language
//======================================================================================
	include "include/set_language.php";

//======================================================================================
// Connect to SQLite database in file
//======================================================================================

	$entries_found					= 0;

	$returnCode 					= '99';
	$returnMsg 						= 'No data found';

	$currentDate = date('Y-m-d');
	$currentTime = date('H:i:s');

//======================================================================================
// Set header
//======================================================================================

	header('Content-Type: application/json;charset=utf-8');

//======================================================================================
// Get time stamp
//======================================================================================
	$timeStamp = '';
	if ( $timeStamp == '' ) {
		$now = DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', ''));
		$timeStamp = $now->format("Y-m-d H:i:s");
	}


	$data = array(
		"timestamp" => $timeStamp,
		"myPageGoTo" => $myPageGoTo,
		"rpyOffSet" => $rpyOffSet,
		"rpyPageSize" => $rpyPageSize,
		"rpyOrderColumn" => $rpyOrderColumn
		);

	if (trim($fromdate) != '') 	$data["fromdate"] 	= $fromdate;
	if (trim($fromtime) != '') 	$data["fromtime"] 	= $fromtime;
	if (trim($todate) != '') 	$data["todate"] 	= $todate;
	if (trim($totime) != '') 	$data["totime"] 	= $totime;

	// print_r($data);

	// echo $search_arg;
	// exit;


//======================================================================================
// Make call to API somewhere
//======================================================================================

	$jsonData = json_encode($data);
	//header('Content-Type: application/json');

	$json_pretty = json_encode(json_decode($jsonData), JSON_PRETTY_PRINT);
	// echo $json_pretty;
	// echo "<br>";
	// echo $url;

	$headers = array(
         "Content-type: Content-Type:application/json",
		 "User-Agent: DATA-HUB 1.0",
         "APIKEY: $DFT_API_KEY"
     );

	$parms 	= '?'
			. 'myPageGoTo=' . $myPageGoTo
			. '&rpyOffSet=' . $rpyOffSet
			. '&rpyPageSize=' . $rpyPageSize
			. '&rpySearchArg=' . $search_arg
			. '&rpyOrderColumn=' . $rpyOrderColumn
			;

	//if (trim($timesort) != '') 	$parms .= '&timesort=' . strtoupper(trim( $timesort ));
	if (trim($fromdate) != '') 	$parms .= '&fromdate=' . trim( $fromdate );
	if (trim($fromtime) != '') 	$parms .= '&fromtime=' . trim( $fromtime );
	if (trim($todate) != '') 	$parms .= '&todate=' . trim( $todate );
	if (trim($totime) != '') 	$parms .= '&totime=' . trim( $totime );


	// Set URL
	$url = $DFT_WEBSERVICE_URL_DATAHUB . '/' . 'hub_log';

	// Add parms
	$url = $url . $parms;

	//echo $url;

	// Create a new cURL resource
	$ch = curl_init($url);

	// Attach encoded JSON string to the POST fields
	curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonData);

	// Set the content type to application/json
	//curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type:application/json'));

	curl_setopt($ch, CURLOPT_HTTPHEADER, $headers );

	// Return response instead of outputting
	curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

    curl_setopt($ch, CURLOPT_POST, false);
	//curl_setopt( $ch, CURLOPT_CUSTOMREQUEST, 'POST' );
	curl_setopt($ch, CURLOPT_HEADER, false);    // we do not need headers
	curl_setopt($ch, CURLOPT_NOBODY, false);    // we don't need body

	// Execute the GET request
	$result = curl_exec($ch);

	$ary	= curl_getinfo($ch);

	// Close cURL resource
	curl_close($ch);

	$data = json_decode($result, true);

	$returnResult = [];

	$returnResult["header"]				= $data['header'];
	$returnResult["header_buttons"]		= $data['header_buttons'];
	$returnResult["data"]				= $data['detail'];
	$returnResult["draw"]				= intval( $draw );
	$returnResult["recordsTotal"]		= intval( $data['header']['myTableRecordsFound'] );
	$returnResult["recordsFiltered"]	= intval( $data['header']['myTotalRecordsFound'] );

	echo json_encode($returnResult);

?>